// Don't modify this file as it will be overwritten.
//
#include "CDR/CDR.h"
#include "ReturnCode.h"
#include "BasicTypes.h"

#ifndef IDL_UserDataType_hh
#define IDL_UserDataType_hh

#ifndef TestData_defined
#define TestData_defined

struct TestData {
  TestData()
	{
		md5 = new char[32];
		md5[0]= '\0';
		seq_num = 0;
		send_time = 0;
	}

  TestData(const TestData  &IDL_s);

  ~TestData(){
		delete md5;
		md5 = NULL;
	}

  	int StructSize()
	{
		int strSize = 0;
		strSize += sizeof(TestData);
		int num_payload = payload.length();
		for(int iSeq0 = 0;iSeq0 < num_payload;iSeq0++)
		{
			strSize += sizeof(octet);
		}
		strSize += strlen(md5);
		return strSize;
	}
  TestData& operator= (const TestData &IDL_s);

  void Marshal(CDR *cdr) const;
  void UnMarshal(CDR *cdr);

  sequence<octet> payload;
char* md5;
unsigned long long seq_num;
unsigned long long send_time;
  
};

typedef sequence<TestData> TestDataSeq;

#endif




#endif /*IDL_UserDataType_hh */
